using System.Text.Json.Serialization;

namespace ConsentManagementProviderLib
{
	public class ConsentStatus
	{
		[JsonInclude]
		public bool? rejectedAny;

		[JsonInclude]
		public bool? rejectedLI;

		[JsonInclude]
		public bool? consentedAll;

		[JsonInclude]
		public bool? consentedToAny;

		[JsonInclude]
		public bool? vendorListAdditions;

		[JsonInclude]
		public bool? legalBasisChanges;

		[JsonInclude]
		public GranularStatus? granularStatus;

		[JsonInclude]
		public bool hasConsentData;

		[JsonInclude]
		public object rejectedVendors;

		[JsonInclude]
		public object rejectedCategories;

		public ConsentStatus(bool? rejectedAny, bool? rejectedLI, bool? consentedAll, bool? consentedToAny, bool? vendorListAdditions, bool? legalBasisChanges, bool? hasConsentData, GranularStatus? granularStatus, object rejectedVendors, object rejectedCategories)
		{
			this.rejectedAny = rejectedAny;
			this.rejectedLI = rejectedLI;
			this.consentedAll = consentedAll;
			this.consentedToAny = consentedToAny;
			this.vendorListAdditions = vendorListAdditions;
			this.legalBasisChanges = legalBasisChanges;
			this.hasConsentData = hasConsentData.GetValueOrDefault();
			this.granularStatus = granularStatus;
			this.rejectedVendors = rejectedVendors;
			this.rejectedCategories = rejectedCategories;
		}
	}
}
